草庐IT

Java 8 闭包和类型识别

全部标签

javascript - 令人困惑的谷歌闭包库api

有人可以向我解释闭包如何以更用户友好的形式工作吗?它的帮助和文档真的让我无处可去。您如何执行简单的任务,例如选择和修改dom(例如,选择页面上的所有内容并隐藏它们)? 最佳答案 参见http://derekslager.com/blog/posts/2010/06/google-closure-introduction.ashx,比较#4,隐藏所有div:goog.require('goog.dom.query');goog.require('goog.style');functionHideElement(selector){go

javascript - 未捕获的类型错误 : Expecting a function in instanceof check

我正在尝试使用Backbone.js,我只是想让消息在我的控制台屏幕上弹出。然而,每次我这样做时,错误都会不断出现(如下所示)UncaughtTypeError:Expectingafunctionininstanceofcheck,butgot[objectObject]backbone.js:1032_.extend.setElementbackbone.js:1032_.extend._ensureElementbackbone.js:1104Backbone.Viewbackbone.js:986childbackbone.js:1531(anonymousfunction)p

javascript - 为什么我的 JQuery 淡入淡出 slider 不适用于任何 IE 类型?

我的JQueryslider在IE中不起作用(在任何文档模式中)。我该如何解决这个问题?按下按钮后,我的代码会滑下文本的div(它也很好地淡入)。IE控制台给我这个错误:"Objectdoesn'tsupportpropertyormethod'fadingSlideToggle'".(function($){$.fn.fadingSlideToggle=function($el,options){vardefaults={duration:500,easing:'swing',trigger:'click'};varsettings=$.extend({},defaults,opti

javascript - Array.from 类型错误 : 0 is not a function

尝试将Array.from传递给Array.prototype.map时出现奇怪的错误。letfn=Array.from.bind(Array);//[Function:boundfrom]fn('test')//['t','e','s','t']['test'].map(s=>fn(s))//[['t','e','s','t']]['test'].map(fn)//TypeError:0isnotafunction完整错误:TypeError:0isnotafunctionatFunction.from(native)atArray.map(native)atrepl:1:10atR

javascript - JavaScript 的类型检查器?

有谁知道有没有好的工具可以分析JavaScript代码和检测类型错误?我知道JavaScript本身是弱类型和动态类型的,但是如果我能有一个程序来验证我所有的字段访问是否合理并且我不会尝试将数字当作字符串来处理,那就太好了。我知道在JavaScript中有一些有效的用例,其中添加或删除字段或在不同类型之间进行转换是有效的和预期的,但有些错误是如此明显,似乎它们可以在脚本开始运行之前被捕获。我听说过JSLint,但我的理解是它主要是一种样式工具,而不是语义分析器。如果我对此有误,那么只要告诉我就是对这个问题的有效答案。 最佳答案 如果

JavaScript 扩展类型返回

我实际上正在研究Crockford的Javascript:好的部分。我是JavaScript的新手,所以我很难理解这段代码的工作原理:Function.prototype.method=function(name,func){this.prototype[name]=func;returnthis;};这是我的想法:作为方法(对象内的函数),this指向Function对象,但为什么需要返回对象,因为我可以访问它来自方法内部?如果我是对的,this是一个引用,而不是本地副本,所以:Function.prototype.method=function(name,func){this.pr

Javascript:不同的返回类型

我看到我可以从JavaScript中的同一个函数返回不同的类型。这种做法是惯用的还是应该劝阻?例如:somefn=function(e){switch(e.type){case'mousedown':returnfalse;case'mousemove':return{x:10,y:20};}}; 最佳答案 我会阻止它。任何使用可根据上下文返回不同类型的函数的代码都必须检查返回值。然而,在某些情况下它是有意义的。假设您有一个解析字符串的函数,例如JSON。在这种情况下,如果输入字符串是表示数组的JSON字符串,则返回数组非常有意义,

javascript - 这种 JavaScript 编码风格有什么问题? (闭包与原型(prototype))

我们一直在讨论如何最好地处理我们的JS应用程序中的对象,研究StoyanStefanov的书,阅读无休止的关于“new”、“this”、“prototype”、闭包等的SO帖子(事实上有这么多,而且他们有很多相互竞争的理论,这表明没有完全明显的答案)。那么让我们假设我们不关心私有(private)数据。我们满足于相信用户和开发人员不会在我们定义的方式之外乱搞对象。鉴于此,这种技术有什么问题(除了它似乎违背了数十年的OO风格和历史)?//namespacetoisolateallPERSON'slogicvarPERSON={};//returnanobjectwhichshouldon

javascript - 识别 Aurelia 中的当前路线

我正在使用Aurelia框架。每次用户导航到新路线/页面时,我都想在应用程序文件(app.ts/app.js)中获取navigationInstruction信息。我试图在应用程序的生命周期事件(激活和绑定(bind))中获取此信息,但没有可用信息。谁能帮我解决这个问题。提前致谢。 最佳答案 订阅路由器的导航“成功”事件:import{EventAggregator}from'aurelia-event-aggregator';import{inject}from'aurelia-dependency-injection';@inj

javascript - 请解释闭包,或将循环计数器绑定(bind)到函数范围

我见过程序员使用计数器在循环内分配事件监听器。我相信这是语法:for(vari=0;i谁能解释一下这背后的逻辑,以及这种奇怪的语法,我从未见过:(function(i))(i);非常感谢您的时间和耐心。 最佳答案 (function(i))(i)语法创建一个匿名函数,然后立即执行它。通常你会这样做以在每次循环时创建一个新函数,它有自己的变量副本,而不是每个事件处理程序共享同一个变量。例如:for(inti=0;i经常把人抓出来,因为无论你点击什么按钮,doFoo(10)都会被调用。鉴于:for(inti=0;i为每次迭代创建一个内部